STACK:	LD	A,<R>		; <R> is the value of R saved at NMI
	LD	R, A
	LD	A,<I>		; <I> is the value of I saved at NMI
	LD	I, A
	LD	HL,<AF'>	; <AF'> is the value of AF' saved at NMI
	PUSH	HL
	LD	HL,<AF>		; <AF> is the value of AF saved at NMI
	PUSH	HL
	POP	AF
	EX	AF, AF'
	POP	AF
	EX	AF, AF'
	LD	BC,<BC>		; <BC> is the value of BC saved at NMI
	LD	DE,<DE>		; <DE> is the value of DE saved at NMI
	LD	HL,<HL>		; <HL> is the value of HL saved at NMI
	LD	SP,<SP>+2	; <SP> is the value of SP saved at NMI
	LD	IX,<IX>		; <IX> is the value of IX saved at NMI
	LD	IY,<IY>		; <IY> is the value of IY saved at NMI
	EXX
	LD	BC,<BC'>	; <BC'> is the value of BC' saved at NMI
	LD	DE,<DE'>	; <DE'> is the value of DE' saved at NMI
	LD	HL,<HL'>	; <HL'> is the value of HL' saved at NMI
	EXX
	EI/DI			; EI if (data+$1A)=$01, DI if (data+$1A)=$00
	IM	1/2/3 		; determined by trial and error
	JP	<PC>		; <PC> is the value of PC saved at NMI